As integrated circuits become more complex, more electrical connections are required between the integrated circuit and the rest of the circuit in which it is used. However, at the same time during which integrated circuits have become more complex, they have also become much smaller. Thus, more electrical connections for an integrated circuit are required, and within a smaller amount of space, than at any previous time.
Typically an integrated circuit is packaged in some manner, and among other functions such as protecting the integrated circuit, it is the job of the package to route signals to and from the integrated circuit in a manner that the electrical connections needed for such can be relatively easily made. Thus, contacts are provided for making electrical connections between the package substrate and the integrated circuit, which contacts are relatively small and relatively closely spaced. In addition, contacts are provided for making electrical connections between the package substrate and other portions of the circuit in which it is used, such as a printed circuit board. These contacts are relatively larger and more spread out, so that it is relatively easier to make the electrical connections between the printed circuit board and the packaged integrated circuit.
The package substrate typically has many different electrically conductive layers, spaced between non electrically conductive layers, through which the electrical signals are routed. Electrical connections between electrically conductive layers are made by structures called vias, and electrical connections across an electrically conductive layer are made by structures called traces, and also by structures called planes. A trace typically routes a signal, and a plane typically conducts either a power or ground potential.
Obviously, integrated circuits having different contact patterns and functions require different package substrates to route their signals. Such a situation, where each integrated circuit is highly customized and each package substrate is also highly customized and only works with the single integrated circuit for which is was designed, is extremely expensive. Not only are there extravagant design costs associated with each combination, but there are also costs associated with the need to carry a large inventory of different parts.
Thus, integrated circuit designers have attempted to resolve this problem by making integrated circuit contact arrays and functions fit a generic pattern, where given signal, power, and ground contacts are in the same position for all integrated circuit designs. However, this has also proven to be quite undesirable, because the constraints on the design of the integrated circuit are far too rigid.
What is needed, therefore, is a system by which the benefits of versatility of a custom design can be enjoyed, while at the same time enjoying the benefits of the reduction in design and inventory costs afforded by a generic design.